package org.example.model.dto;

import lombok.Data;

/**
 * 商家进件请求参数
 *
 * @author zhiyuan
 * @date 2025/10/27
 */
@Data
public class MerchantOnboardingRequest {

    /**
     * 外部业务号（商户系统唯一标识）
     */
    private String outBizNo;

    /**
     * 商户名称
     */
    private String merchantName;

    /**
     * 商户简称
     */
    private String merchantShortName;

    /**
     * 商户类型：ENTERPRISE-企业，INDIVIDUAL-个体工商户，PERSONAL-个人
     */
    private String merchantType;

    /**
     * 统一社会信用代码（企业/个体工商户必填）
     */
    private String businessLicense;

    /**
     * 营业执照图片URL（已上传到支付宝的图片地址）
     */
    private String businessLicenseUrl;

    /**
     * 法人姓名
     */
    private String legalPersonName;

    /**
     * 法人证件类型：IDENTITY_CARD-身份证
     */
    private String legalPersonCertType = "IDENTITY_CARD";

    /**
     * 法人证件号码
     */
    private String legalPersonCertNo;

    /**
     * 法人证件正面照片URL
     */
    private String legalPersonCertFrontUrl;

    /**
     * 法人证件反面照片URL
     */
    private String legalPersonCertBackUrl;

    /**
     * 联系人姓名
     */
    private String contactName;

    /**
     * 联系人手机号
     */
    private String contactMobile;

    /**
     * 联系人邮箱
     */
    private String contactEmail;

    /**
     * 经营地址-省
     */
    private String province;

    /**
     * 经营地址-市
     */
    private String city;

    /**
     * 经营地址-区
     */
    private String district;

    /**
     * 经营地址-详细地址
     */
    private String address;

    /**
     * 银行开户名
     */
    private String accountName;

    /**
     * 银行账号
     */
    private String accountNo;

    /**
     * 开户银行
     */
    private String bankName;

    /**
     * 开户支行
     */
    private String bankBranchName;

    /**
     * 银行所在省
     */
    private String bankProvince;

    /**
     * 银行所在市
     */
    private String bankCity;

    /**
     * 经营类目（支付宝类目编码）
     */
    private String mccCode;

    /**
     * 店铺名称
     */
    private String shopName;

    /**
     * 店铺招牌照片URL
     */
    private String shopSignBoardUrl;

    /**
     * 店铺内景照片URL
     */
    private String shopInteriorUrl;
}
